package com.hidt.shop.mapper;

import com.hidt.shop.domain.User_table;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

public interface UserMapper {
    /***
     * 添加会员操作
     * @param user_table
     * @return
     */
    @Insert("insert into user_table(user_name,user_pwd)values(#{user_name},#{user_pwd})")
    int AddUser(User_table user_table);

    /**
     * 会员登陆
     *@参数  user_name
     *@返回值  User_table
     *@创建人  lmf
     *@创建时间  2021/1/18
     */
    @Select("select * from user_table where user_name=#{user_name} and useris_delete=0")
    User_table UserLogin(String user_name);

    /**
     * 会员修改自己的基本信息
     *@参数  user_table
     *@创建人  lmf
     *@创建时间  2021/1/18
     */
    @Update("update user_table set user_name=#{user_name},user_realname=#{user_realname},user_gender=#{user_gender},user_email=#{user_email},user_phone=#{user_phone},user_id=#{user_id},user_birthdate=#{user_birthdate},user_address=#{user_address},user_image=#{user_image} where id=#{id}")
    int UpdateUserById(User_table user_table);

    /**
     * 通过用户名得到用户
     *@参数  user_name
     *@返回值  User_table
     *@创建人  lmf
     *@创建时间  2021/1/19
     */
    @Select("select * from user_table where user_name=#{user_name} and useris_delete=0")
     User_table findUserByUsername(String user_name);

    /**
     * 通过用户id得到用户
     *@参数   id
     *@返回值  User_table
     *@创建人  lmf
     *@创建时间  2021/1/19
     */
    @Select("select * from user_table where id=#{id} and useris_delete=0")
    User_table findUserById(int id);
    /**
     * 通过用户名修改密码
     *@参数  user_name
     *@返回值  User_table
     *@创建人  lmf
     *@创建时间  2021/1/19
     */
    @Update("update user_table set user_pwd=#{user_pwd} where user_name=#{user_name}")
     int UpdatePwdByUsername(User_table user_table);
    /**
     * 管理员全查会员信息
     *@参数
     *@返回值  List<User_table>
     *@创建人  lmf
     *@创建时间  2021/1/20
     */
    @Select("select * from user_table")
    List<User_table> FindAllUser();

    /**
     * 管理员通过id逻辑删除会员
     *@参数   int
     *@返回值  int
     *@创建人  lmf
     *@创建时间  2021/1/20
     */
    @Update("update user_table set useris_delete=1 where id=#{id}")
    int DeleteUser(int id);
}

